Synchronization of sensor data having display on mobile units is discussed, for instance, in Laid-Open Document US 20110164163 A1. There the discussion relates to the synchronization of sensors and augmented reality in general, and not the method of correcting individual data points and their time discrepancy among one another.
Patent document U.S. Pat. No. 8,050,881 B1 discusses the synchronization of a local clock in the sensor with another clock and interpolation of the times. In this context, only the points in time of (integral) measurements are taken into account, not the delay between the creation of the data and reading them out of the sensor. The asynchronism of different sensors among one another is also not taken into account or actively eliminated.
Patent document U.S. Pat. No. 7,382,780 B1 discusses a subsequent time synchronization with the aid of sample counters and a real time clock, as well as the combination to data frames.
Sensor data fusion requires a plurality of sensors in a system, from which a target quantity is calculated. For instance, from an initial position of a rigid body, the position at a later point in time may be calculated approximately by a value series from an acceleration sensor and a yaw sensor. Frequently, the system is even over-determined, e.g. at a fusion of data of an acceleration sensor, a yaw rate sensor and a geomagnetic field sensor, so that by using suitable filters, such as a Kalman filter, errors may be minimized. The algorithms, used in practice for calculating the target values, assume that the measured points of the individual sensors are equidistant and have no phase shift. The data rates are typically identical or are multiples of one another, e.g. in an acceleration sensor and a yaw rate sensor, which both supply sensor data at 100 Hz, the image in FIG. 1 is yielded.
The sensor data fusion typically takes place on systems which consist of a control unit and a plurality of sensors. FIG. 2 shows a possible layout of such a system. A number of sensors A to N is connected to a common control unit.
The control unit may be implemented in software on a processor or a microcontroller or in dedicated hardware. The sensors are typically made up of a MEMS element, an analog front end and a digital back end. The sensor typically supplies new data at a user-definable frequency and files them in the digital back end. The digital back end frequently includes a FIFO register in which the data are stored temporarily, as for example in a triaxial acceleration sensor BMA255 Digital of the firm Bosch Sensortec, so that the control unit has to fetch data less often, which may lead to energy savings. The sensors are typically not synchronized and the output data rate of the sensors is a function of environmental parameters, such as the temperature. The sensors supply asynchronous data, as shown schematically in FIG. 3.
These days, it is believed that the asynchronous sensor data are read out from the sensors, and the control unit puts a time stamp on the read instant, wherewith they are artificially synchronized. That leads to errors in the calculated target values in the sensor data fusion.
If the data are stored in the digital back end of the respective sensors in a FIFO, the synchronization is even more difficult, since the read instant is the same for all sensor data in the FIFO. If one calculates back using the data rate set in the sensor, the time stamps on the data may even diverge greatly. On this point, FIG. 4 shows an exemplary case in which the 11th element in the FIFO of sensor B is taken up after the 12th element in the FIFO of sensor A.
There are various possibilities of completely synchronizing different sensors.
A first possibility is the so-called forced mode. In this context, the sensors start a measurement when they are triggered via the digital interface by the control unit, for example, such as in the electronic compass BMCO50 of the firm Bosch Sensortec. This typically takes place by reading or writing on a register of the digital back end.
A second possibility is using an external synchronization terminal connection: In this context, the sensors, in addition to the digital interface, have an external pin, at which a synchronization signal from the control unit, another sensor or another component in the system is present.
If FIFO's are used, a partial synchronization is achieved in that a common FIFO is used for all sensors. The partial synchronization avoids the FIFO specific synchronization problem (the outdating of data) shown in FIG. 4. This solution is frequently used in systems which use a microcontroller as the sensor hub, as for example the ML610Q792 of the firm Lapis. In addition there are sensors which integrate a sensor hub having FIFO for all connected sensors in the digital back end, such as the yaw rate sensor MPU3050 of the firm Invensense.
The solutions of the synchronization problem presented above may, under certain circumstances, bring disadvantages with them. The forced mode makes real time demands on the control unit, which do not exist in the systems dominating the market today, and it is not to be expected that these will be satisfied in the future. The external sync pin causes additional costs in the sensor and, because of the wiring, also in the system.